export type DanmakuProps = {
  /** 是否暂停 */
  paused?: boolean;
  /** 允许重叠 */
  allowOverlap?: boolean;
  /** 弹幕轨道高度，默认 24 */
  lineHeight?: number;
  /** 弹幕横向间距，默认 20 */
  horizontalSpacing?: number;
  /** 弹幕可见性 */
  visible?: {
    top?: boolean;
    bottom?: boolean;
    move?: boolean;
    color?: boolean;
  };
};

export type DanmakuSlots = {
  default?: (props: DanmakuItem) => any;
};

export type DanmakuItem = {
  /** 弹幕显示位置 */
  type: "top" | "bottom" | "move";
  /** 弹幕内容 */
  text: string;
  /** 弹幕颜色 */
  color?: string;
  /** 字体大小，默认 16 */
  size?: number;
  /** 动画时长，默认 5s */
  duration?: number;
  style?: string;
  class?: string;
  /** 弹幕宽度 */
  $width?: number;
  /** 移动速度 */
  $speed?: number;
  /** 占用轨道索引 */
  $tunnelIdx?: number;
  /** 弹幕元素DOM */
  $el?: HTMLElement;
  [key: string]: any;
};
